package ribbon.consumer.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

import javax.annotation.Resource;

/**
 * @Author:RenPu
 * @Date: 2020/8/23 9:51
 * @Version: 1.0
 * @description:
 */

@RestController
public class RubbionConsumerController {


    @Resource
    private RestTemplate restTemplate;

    @GetMapping("/sayHi")
    public String sayHi() {
        return restTemplate.getForObject("http://eureka-client/sayHi", String.class);
    }


    public void casLock() {
        // CAS+自旋锁获取系统资源的打开方式，真实应用中还要注意防止无休止自旋：

        // 或者for (;;) 做自旋
        while (true) {
            // cas操作
//
//           if (cas(expected, update)) {
//               // 业务逻辑代码
//               // break或退出return
//           }
        }
    }


}
